#pragma once

#include "zRaster.h"
#include "ckObject.h"

namespace ck
{
	namespace data
	{
		class RasterBand;

		class Raster : public ckObject
		{
		public:
			Raster(){}
			virtual ~Raster() {}

		public:
			virtual	void		SetPath(const char* szPath) = 0;
			virtual RESULTCODE	Open() = 0;
			virtual bool		IsOpen() = 0;
			virtual void		Close() = 0;

			virtual z_uint32	GetBandCount() = 0;
			virtual RasterBand*	GetBand(z_uint32 i) = 0;
		};
	}
}
